home *** CD-ROM | disk | FTP | other *** search
/ Aminet 30 / Aminet 30 (1999)(Schatztruhe)[!][Apr 1999].iso / Aminet / dev / cross / GBDK-2.0.lha / GBDK / lib / sprintn.c < prev    next >
C/C++ Source or Header  |  1998-10-01  |  424b  |  23 lines

  1. #include <stdio.h>
  2.  
  3. /* Print a number in any radix */
  4.  
  5. extern char *digits;
  6.  
  7. UBYTE sprintn(char *s, BYTE number, BYTE radix, BYTE signed_value)
  8. {
  9.   UBYTE i;
  10.   UBYTE pos = 0;
  11.  
  12.   if(number < 0 && signed_value) {
  13.     putchar('-');
  14.     number = -number;
  15.   }
  16.   if((i = (UBYTE)number / (UBYTE)radix) != 0)
  17.     pos = sprintn(s, i, radix, UNSIGNED);
  18.   s[pos++] = digits[(UBYTE)number % (UBYTE)radix];
  19.   s[pos] = 0;
  20.  
  21.   return pos;
  22. }
  23.